apic_write_around(APIC_TMICT, clocks/APIC_DIVISOR);
}
-static void __devinit setup_APIC_timer(unsigned int clocks)
+static void __devinit setup_APIC_timer(void)
{
unsigned long flags;
local_irq_save(flags);
- __setup_APIC_LVTT(clocks);
+ __setup_APIC_LVTT(0);
local_irq_restore(flags);
}
return result;
}
-static unsigned int calibration_result;
-
void __init setup_boot_APIC_clock(void)
{
unsigned long flags;
local_irq_save(flags);
- calibration_result = calibrate_APIC_clock();
- /*
- * Now set up the timer for real.
- */
- setup_APIC_timer(calibration_result);
+ calibrate_APIC_clock();
+
+ setup_APIC_timer();
local_irq_restore(flags);
}
void __devinit setup_secondary_APIC_clock(void)
{
- setup_APIC_timer(calibration_result);
+ setup_APIC_timer();
}
void disable_APIC_timer(void)
construct_percpu_idt(cpu);
setup_secondary_APIC_clock();
- enable_APIC_timer();
+
/*
* low-memory mappings have been cleared, flush them from
* the local TLBs too.